CALCULATING THE CHECKSUM FOR ROLAND SYSTEM EXCLUSIVE MESSAGES The checksum verifies the number of bytes in the Data Body portion of a Roland system exclusive message (such as a data request message). There is an established formula for finding the correct checksum of the Data Body in your message. The method for checksumming is as follows: 1. The Data Body consists of the Starting Address and the Size Byte (refer to your Roland manual for the System Exclusive Message data format). Add all of the bytes of the Data Body together (the numbers are in hexadecimal). 2. If the result of the above mentioned addition is less than 80(H), subtract it from 80(H). If the result is larger than 80(H), subtract 80(H) as many times as necessary until it is less than 80(H) and then subtract it from 80(H). 3. The result of this subtraction is the checksum. An example would be as follows: If the total bytes of the Data Body = A and the number to subtract "A" from = B, then B - A = Checksum. Example Data Body = 08 00 00 00 7E 0E Sum of Bytes = 94(H) (this would be "A") Since 94(H) is larger than 80(H), we'll subtract it from 80(H) as "B". Formula = (B - A = Checksum) or... Formula = 94(H) - 80(H) = 14(H). Now - 80(H) - 14(H) = 6C(H) is your checksum. The Checksum will be followed by the End of Exclusive Message. This is a standard convention and will always be F7(H). Hope this helps you compute Roland's checksum formula, good luck.